package com.xydtech.ecard.custgroup.service;

import com.xydtech.ecard.custgroup.domain.EcardApiCustomerGroupMerchant;

import java.util.List;

/**
 * 电子名片客群、社团组织和商户、企业、新型农业主体关联Service接口
 *
 * @author yuzhiguo
 * @date 2024-11-27 下午4:19
 */
public interface IEcardApiCustomerGroupMerchantService
{
    /**
     * 查询电子名片客群、社团组织和商户、企业、新型农业主体关联
     *
     * @param id 电子名片客群、社团组织和商户、企业、新型农业主体关联主键
     * @return 电子名片客群、社团组织和商户、企业、新型农业主体关联
     */
    public EcardApiCustomerGroupMerchant selectEcardCustomerGroupMerchantById(Long id);

    /**
     * 查询电子名片客群、社团组织和商户、企业、新型农业主体关联列表
     *
     * @param ecardApiCustomerGroupMerchant 电子名片客群、社团组织和商户、企业、新型农业主体关联
     * @return 电子名片客群、社团组织和商户、企业、新型农业主体关联集合
     */
    public List<EcardApiCustomerGroupMerchant> selectEcardCustomerGroupMerchantList(EcardApiCustomerGroupMerchant ecardApiCustomerGroupMerchant);

    /**
     * 保存行业客户数据接口
     * @param customerGroupMerchant
     * @return
     */
    int addCustomerGroupMerchantInfo(EcardApiCustomerGroupMerchant customerGroupMerchant);

    /**
     * 条件查询登录人客群下的行业客户接口
     * @param ecardCustomerGroupMerchant
     * @return
     */
    List<EcardApiCustomerGroupMerchant> getIndustrialCustomerList(EcardApiCustomerGroupMerchant ecardCustomerGroupMerchant, String salt);

    /**
     * 根据id修改行业客户状态
     * @param id
     * @return
     */
    int changeIndustrialCustomerStatus(Long id);

    /**
     * 查询行业客户地图坐标列表接口
     * @param creatorId
     * @param deptId
     * @return
     */
    List<EcardApiCustomerGroupMerchant> getGroupMerchantCoordinateList(Long creatorId, Long deptId);

    /**
     * 根据法人机构ID查询机构下所有行业客户坐标信息列表
     * @param creatorId
     * @param deptId
     * @return
     */
    List<EcardApiCustomerGroupMerchant> getAllGroupMerchantCoordinateList(Long creatorId, Long deptId);
}
